package cn.tedu.ivoscm.vehicle.pojo.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;

@Data
public class VehicleSaveParam {
    @ApiModelProperty(value = "车辆id")
    private Long id;

    @ApiModelProperty(value = "车辆品牌")
    @NotBlank(message = "车辆品牌不能为空")
    private String brand;

    @ApiModelProperty(value = "车辆车牌")
    @NotBlank(message = "车辆车牌不能为空")
    private String license;

    @ApiModelProperty(value = "车辆型号")
    @NotBlank(message = "车辆型号不能为空")
    private String model;

    @ApiModelProperty(value = "车辆识别码")
    @NotBlank(message = "车辆识别码不能为空")
    private String code;

    @ApiModelProperty(value = "车辆排量")
    @NotBlank(message = "车辆排量不能为空")
    private String displacement;

    @ApiModelProperty(value = "车辆类型")
    @NotBlank(message = "车辆类型不能为空")
    private String type;

    @ApiModelProperty(value = "车辆颜色")
    @NotBlank(message = "车辆颜色不能为空")
    private String color;

    @ApiModelProperty(value = "车辆里程")
    @NotBlank(message = "车辆里程不能为空")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private String kilometers;

    @ApiModelProperty(value = "上牌时间")
    @NotNull(message = "上牌时间不能为空")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date regTime;

    @ApiModelProperty(value = "购买时间")
    @NotNull(message = "购买时间不能为空")
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    private Date buyTime;

    @ApiModelProperty(value = "车辆价格")
    @NotBlank(message = "车辆价格不能为空")
    private String price;

    @ApiModelProperty(value = "车辆电池类型")
    @NotBlank(message = "车辆电池类型不能为空")
    private String batteryType;

    @ApiModelProperty(value = "电子围栏车辆绑定状态 已绑定1 未绑定0")
    @NotBlank(message = "围栏绑定状态不能为空")
    private String geofenceBindStatus;

    @ApiModelProperty(value = "电子围栏id")
    private Long geofenceId;
}
